home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Shareware Grab Bag
/
Shareware Grab Bag.iso
/
010
/
funbasic.arc
/
DOGS.BAS
< prev
next >
Wrap
BASIC Source File
|
1985-08-08
|
4KB
|
131 lines
10 CLS:KEY OFF:SCREEN 1
20 LOCATE 12,16:PRINT "WELCOME TO"
30 LOCATE 14,16:PRINT "THE DOG"
40 LOCATE 16,16:PRINT " TRACK "
50 LOCATE 20,12:INPUT "HIT RETURN TO START ",R$
60 CLS
70 LOCATE 2,6:INPUT "HOW MANY PLAYERS ";HM
80 FOR I=1 TO HM
90 LOCATE I+4,4:PRINT "PLAYER " I "NAME ":LOCATE I+4,18:INPUT " ",PL$(I)
100 NEXT I
110 FOR I=1 TO HM:PD(I)=500:NEXT I
120 CLS
130 F=0
140 DATA BEA GAL,MALI MUTT,OODLES O' POODLES,HERMAN SHEPHERD,AH SO LHAPSO,DAKS HOUND,FOXY TERRIER,BERNARD THE SAINT
150 FOR I=1 TO 8
160 READ HN$(I):NEXT I
170 RESTORE
180 LOCATE 1,2:PRINT "#"
190 LOCATE 1,7:PRINT "NAME"
200 LOCATE 1,27:PRINT "ODDS"
210 FOR I=1 TO 8
220 LOCATE I+2,7:PRINT HN$(I):LOCATE I+2:PRINT I
230 FOR M=1 TO 8
240 O=INT(VAL(RIGHT$(TIME$,2)))
250 RANDOMIZE(O)
260 ODDS(M)=INT(RND*20)+1
270 NEXT M
280 FOR B=1 TO 8
290 LOCATE B+2,24:PRINT ODDS(B)
300 NEXT B
310 NEXT I
320 FOR I=1 TO 8:LOCATE I+2,30:PRINT "TO 1":NEXT I
330 FOR I=1 TO HM
340 LOCATE 22,1:PRINT " "
350 LOCATE I+13,1:PRINT PL$(I) " HAS $";PD(I)
360 LOCATE I+13,20:INPUT "BET ";DB(I),HB(I),POSI$(I)
370 IF DB(I)>PD(I) THEN 380 ELSE 410
380 LOCATE 22,1:BEEP:PRINT "YOU DON'T HAVE THAT MUCH!!"
390 LOCATE I+13,20:PRINT " "
400 GOTO 350
410 IF HB(I)<1 OR HB(I)>8 THEN 420 ELSE 430
420 LOCATE 22,1:BEEP:PRINT " ":LOCATE 22,1:PRINT "NO SUCH DOG! ":LOCATE I+13,20:PRINT " ":GOTO 350
430 IF POSI$(I)="W" OR POSI$(I)="P" OR POSI$(I)="S" THEN 450 ELSE 440
440 LOCATE 22,1:BEEP:PRINT " ":LOCATE 22,1:PRINT "W,P,S ONLY!":LOCATE I+13,20:PRINT " ":GOTO 350
450 IF POSI$(I)="W" THEN POSI(I)=1
460 IF POSI$(I)="P" THEN POSI(I)=2
470 IF POSI$(I)="S" THEN POSI(I)=3
480 NEXT I
490 CLS
500 FOR I=0 TO 200 STEP 24
510 LINE(10,I)-(302,I)
520 NEXT I
530 X=2
540 FOR I=1 TO 8
550 LOCATE X,2:PRINT I
560 X=X+3
570 NEXT I
580 LINE (25,0)-(25,190)
590 LINE (300,0)-(300,190)
591 LINE (302,0)-(302,190)
610 DRAW "BM 27,12"
620 H$="F4 D4 R2 U4 R8 D4 R2 U6 R3 U3 L3 D3 L12"
630 DRAW "XH$;"
640 DRAW "BM 27,36;XH$;"
650 DRAW "BM 27,60;XH$;":DRAW "BM 27,84;XH$;"
660 DRAW "BM 27,108;XH$;":DRAW "BM 27,132;XH$;":DRAW "BM 27,156;XH$;":DRAW "BM 27,180;XH$;"
670 FOR I=1 TO 2000:NEXT I
680 SOUND 1000,5:SOUND 600,5
690 P=27
700 FOR I=1 TO 8:P(I)=27:NEXT I
710 FOR KKK=1 TO 30
720 FOR T=1 TO 8
730 RN=INT(VAL(RIGHT$(TIME$,2)))
740 RANDOMIZE(RN)
750 DI=INT(RND*50)+25
760 H=INT(RND*8)+1
770 HS(T)=H
780 GOSUB 980
790 FLAG=0
800 IF FLAG=1 THEN 730 ELSE 810
810 DST=12:FOR LL=1 TO 8:V(LL)=DST:DST=DST+24:NEXT LL
820 Y=V(H)
830 FOR X=P(H) TO P(H)+DI
840 DRAW "C1;BM=X;,=Y;XH$;"
850 DRAW "C0;BM=X;,=Y;XH$;"
860 NEXT X
870 DRAW "C1;BM=X;,=Y;XH$;"
880 P(H)=P(H)+DI
890 FOR JJ=1 TO 8
900 FOR I=1 TO 3
910 IF JJ=F1(I) THEN 950 ELSE 920
920 NEXT I
930 IF F=3 THEN GOSUB 1070
940 IF P(JJ)>280 THEN GOSUB 1040 ELSE 950
950 NEXT JJ
960 NEXT T
970 NEXT KKK
980 FOR L=1 TO 8
990 FOR K=1 TO 8
1000 IF HS(L)=HS(K) AND K<>L THEN FLAG=1 ELSE FLAG=0
1010 NEXT K
1020 NEXT L
1030 RETURN
1040 F=F+1
1050 F1(F)=JJ
1060 RETURN
1070 CLS
1080 LOCATE 12,14:PRINT "THE FINISH "
1090 LOCATE 14,16:PRINT HN$(F1(1))
1100 LOCATE 15,16:PRINT HN$(F1(2))
1110 LOCATE 16,16:PRINT HN$(F1(3))
1120 LOCATE 20,4:INPUT "HIT RETURN TO TABULATE BETS ",R$
1130 FOR I=1 TO 8
1140 FOR J=1 TO 3
1150 IF HB(I)=F1(J) AND POSI(I)=>J THEN 1160 ELSE 1180
1160 PAY(I)= ((1/J)*DB(I))*ODDS(J)
1170 PAY(I)=INT(PAY(I))
1180 NEXT J
1190 NEXT I
1200 CLS
1210 FOR I=1 TO 8
1220 IF PAY(I)=0 THEN 1240 ELSE 1230
1230 LOCATE I+5,5:PRINT PL$(I) " WON $ ";PAY(I)
1240 NEXT I
1250 FOR I=1 TO 8
1260 PD(I)=PD(I)-DB(I)+PAY(I)
1270 NEXT I
1280 LOCATE 20,4:INPUT "HIT RETURN FOR NEXT RACE ",R$
1290 ERASE HN$,ODDS,HB,POSI$,POSI,DB,P,HS,V,F1,PAY
1300 GOTO 120